home *** CD-ROM | disk | FTP | other *** search
/ Aminet 48 / Aminet 48 (2002)(GTI - Schatztruhe)[!][Apr 2002].iso / Aminet / text / edit / vim60rt.lha / Vim / vim60 / syntax / pov.vim < prev    next >
Encoding:
Text File  |  2001-09-25  |  8.6 KB  |  145 lines

  1. " Vim syntax file
  2. " This is a GENERATED FILE. Please always refer to source file at the URI below.
  3. " Language: PoV-Ray(tm) 3.5 Screen Description Language
  4. " Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
  5. " Last Change: 2001-09-25
  6. " URI: http://physics.muni.cz/~yeti/download/pov.vim
  7. " Required Vim Version: 6.0
  8.  
  9. " Setup
  10. if version >= 600
  11.   " Quit when a syntax file was already loaded
  12.   if exists("b:current_syntax")
  13.     finish
  14.   endif
  15. else
  16.   " Croak when an old Vim is sourcing us.
  17.   echo "Sorry, but this syntax file relies on Vim 6 features.  Either upgrade Vim or usea version of " . expand("<sfile>:t:r") . " syntax file appropriate for Vim " . version/100 . "." . version %100 . "."
  18.   finish
  19. endif
  20.  
  21. syn case match
  22.  
  23. " Top level stuff
  24. syn keyword povCommands global_settings
  25. syn keyword povObjects array atmosphere background bicubic_patch blob box camera cone cubic cylinder disc fog height_field isosurface julia_fractal lathe light_group light_source mesh mesh2 object parametric pattern photons plane poly polygon prism quadric quartic rainbow sky_sphere smooth_triangle sor sphere sphere_sweep spline superellipsoid text torus triangle
  26. syn keyword povCSG clipped_by contained_by difference intersection merge union
  27. syn keyword povAppearance interior material media texture interior_texture texture_list
  28. syn keyword povGlobalSettings ambient_light assumed_gamma charset hf_gray_16 irid_wavelength max_intersections max_trace_level number_of_waves radiosity noise_generator 
  29. syn keyword povTransform inverse matrix rotate scale translate transform
  30.  
  31. " Descriptors
  32. syn keyword povDescriptors finish normal pigment uv_mapping uv_vectors vertex_vectors
  33. syn keyword povDescriptors adc_bailout always_sample brightness count error_bound distance_maximum gray_threshold load_file low_error_factor max_sample media minimum_reuse nearest_count normal pretrace_end pretrace_start recursion_limit save_file
  34. syn keyword povDescriptors color colour gray rgb rgbt rgbf rgbft red green blue
  35. syn keyword povDescriptors bump_map color_map colour_map image_map material_map pigment_map quick_color quick_colour normal_map texture_map image_pattern pigment_pattern
  36. syn keyword povDescriptors ambient brilliance conserve_energy crand diffuse fresnel irid metallic phong phong_size refraction reflection reflection_exponent roughness specular
  37. syn keyword povDescriptors cylinder fisheye omnimax orthographic panoramic perspective spherical ultra_wide_angle
  38. syn keyword povDescriptors agate average brick boxed bozo bumps cells checker crackle cylindrical dents facets function gradient granite hexagon julia leopard magnet mandel marble onion planar quilted radial ripples slope spherical spiral1 spiral2 spotted toroidal waves wood wrinkles
  39. syn keyword povDescriptors density_file
  40. syn keyword povDescriptors area_light shadowless spotlight parallel
  41. syn keyword povDescriptors absorption confidence density emission intervals ratio samples scattering variance
  42. syn keyword povDescriptors distance fog_alt fog_offset fog_type turb_depth
  43. syn keyword povDescriptors b_spline bezier_spline catmull_rom_spline cubic_spline evaluate face_indices form linear_spline max_gradient normal_indices normal_vectors quadratic_spline uv_indices
  44. syn keyword povDescriptors target
  45.  
  46. " Modifiers
  47. syn keyword povModifiers caustics dispersion dispersion_samples fade_color fade_colour fade_distance fade_power ior
  48. syn keyword povModifiers bounded_by double_illuminate hierarchy hollow no_shadow open smooth sturm threshold water_level
  49. syn keyword povModifiers hypercomplex max_iteration precision quaternion slice
  50. syn keyword povModifiers conic_sweep linear_sweep 
  51. syn keyword povModifiers flatness type u_steps v_steps
  52. syn keyword povModifiers aa_level aa_threshold adaptive falloff jitter looks_like media_attenuation media_interaction method point_at radius tightness
  53. syn keyword povModifiers angle aperture blur_samples confidence direction focal_point h_angle location look_at right sky up v_angle variance
  54. syn keyword povModifiers all bump_size filter interpolate map_type once slope_map transmit use_alpha use_color use_colour use_index
  55. syn keyword povModifiers black_hole agate_turb brick_size control0 control1 cubic_wave density_map flip frequency interpolate inverse lambda mortar octaves offset omega phase poly_wave ramp_wave repeat scallop_wave sine_wave strength triangle_wave thickness turbulence turb_depth type warp
  56. syn keyword povModifiers eccentricity extinction
  57. syn keyword povModifiers arc_angle falloff_angle width
  58. syn keyword povModifiers accuracy all_intersections altitude autostop circular collect coords cutaway_textures dist_exp expand_thresholds exponent exterior gather global_lights major_radius max_trace no_bump_scale no_image no_reflection orient orientation pass_through precompute projected_through range_divider solid spacing split_union tolerance
  59.  
  60. " Words not marked `reserved' in documentation, but...
  61. syn keyword povHFType gif iff jpeg pgm png pot ppm sys tga tiff contained
  62. syn keyword povFontType ttf contained
  63. syn keyword povDensityType df3 contained
  64. syn keyword povCharset ascii utf8 contained
  65.  
  66. " Math functions on floats, vectors and strings
  67. syn keyword povFunctions abs acos asc asin atan2 ceil cos defined degrees dimensions dimension_size div exp file_exists floor inside int internal ln log max max_extent min min_extent mod pow radians rand seed select sin sqrt strcmp strlen tan trace val vdot vlength vstr vturbulence
  68. syn keyword povFunctions vaxis_rotate vcross vnormalize vrotate
  69. syn keyword povFunctions chr concat substr str strupr strlwr
  70. syn keyword povJuliaFunctions acosh asinh atan cosh cube pwr reciprocal sinh sqr tanh
  71.  
  72. " Specialities
  73. syn keyword povConsts clock clock_delta clock_on final_clock final_frame frame_number initial_clock initial_frame image_width image_height false no off on pi t true u v version x y yes z
  74. syn match povDotItem "\.\@<=\(blue\|green\|filter\|red\|transmit\|t\|u\|v\|x\|y\|z\)\>" display
  75.  
  76. " Comments
  77. syn region povComment start="/\*" end="\*/" contains=povTodo,povComment
  78. syn match povComment "//.*" contains=povTodo
  79. syn match povCommentError "\*/"
  80. syn sync ccomment povComment
  81. syn sync minlines=50
  82. syn keyword povTodo TODO FIXME XXX NOT contained
  83. syn cluster povPRIVATE add=povTodo
  84.  
  85. " Language directives
  86. syn match povConditionalDir "#\s*\(else\|end\|if\|ifdef\|ifndef\|switch\|while\)\>"
  87. syn match povLabelDir "#\s*\(break\|case\|default\|range\)\>"
  88. syn match povDeclareDir "#\s*\(declare\|default\|local\|macro\|undef\|version\)\>"
  89. syn match povIncludeDir "#\s*include\>"
  90. syn match povFileDir "#\s*\(fclose\|fopen\|read\|write\)\>"
  91. syn match povMessageDir "#\s*\(debug\|error\|render\|statistics\|warning\)\>"
  92. syn region povFileOpen start="#\s*fopen\>" skip=+"[^"]*"+ matchgroup=povOpenType end="\<\(read\|write\|append\)\>" contains=ALLBUT,PovParenError,PovBraceError,@PovPRIVATE transparent keepend
  93.  
  94. " Literal strings
  95. syn match povSpecialChar "\\\d\d\d\|\\." contained
  96. syn region povString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=povSpecialChar oneline
  97. syn cluster povPRIVATE add=povSpecialChar
  98.  
  99. " Catch errors caused by wrong parenthesization
  100. syn region povParen start='(' end=')' contains=ALLBUT,povParenError,@povPRIVATE transparent
  101. syn match povParenError ")"
  102. syn region povBrace start='{' end='}' contains=ALLBUT,povBraceError,@povPRIVATE transparent
  103. syn match povBraceError "}"
  104.  
  105. " Numbers
  106. syn match povNumber "\(^\|\W\)\@<=[+-]\=\(\d\+\)\=\.\=\d\+\([eE][+-]\=\d\+\)\="
  107.  
  108. " Define the default highlighting
  109. hi def link povComment        Comment
  110. hi def link povTodo           Todo
  111. hi def link povNumber         Number
  112. hi def link povString         String
  113. hi def link povFileOpen       Constant
  114. hi def link povConsts         Constant
  115. hi def link povDotItem        Constant
  116. hi def link povHFType         povSpecial
  117. hi def link povCharset        povSpecial
  118. hi def link povDensityType    povSpecial
  119. hi def link povFontType       povSpecial
  120. hi def link povOpenType       povSpecial
  121. hi def link povSpecialChar    povSpecial
  122. hi def link povSpecial        Special
  123. hi def link povConditionalDir PreProc
  124. hi def link povLabelDir       PreProc
  125. hi def link povDeclareDir     Define
  126. hi def link povIncludeDir     Include
  127. hi def link povFileDir        PreProc
  128. hi def link povMessageDir     Debug
  129. hi def link povAppearance     povDescriptors
  130. hi def link povObjects        povDescriptors
  131. hi def link povGlobalSettings povDescriptors
  132. hi def link povDescriptors    Type
  133. hi def link povJuliaFunctions PovFunctions
  134. hi def link povModifiers      povFunctions
  135. hi def link povFunctions      Function
  136. hi def link povCommands       Operator
  137. hi def link povTransform      Operator
  138. hi def link povCSG            Operator
  139. hi def link povParenError     povError
  140. hi def link povBraceError     povError
  141. hi def link povCommentError   povError
  142. hi def link povError          Error
  143.  
  144. let b:current_syntax = "pov"
  145.